1. Technical Field
The present invention relates generally to an improved data processing system and in particular to an improved method and apparatus for processing data. Still more particularly, the present invention provides a method and apparatus and computer instructions for authorizing execution of applications by nodes in a grid.
2. Description of Related Art
Network data processing systems are commonly used in all aspects of business and research. These networks are used for communicating data and ideas as well as providing a repository to store information. Further, in many cases the different nodes making up a network data processing system may be employed to process information. Individual nodes may have different tasks to perform. Additionally, it is becoming more common to have the different nodes work towards solving a common problem, such as a complex calculation. A set of nodes participating in a resource sharing scheme is also referred to as a “grid” or “grid network”. For example, nodes in a grid network may share processing resources to perform a complex computation, such as deciphering keys.
The nodes in a grid network may be contained within a network data processing system, such as a local area network (LAN) or a wide area network (WAN). These nodes also may be located in different geographically diverse locations. For example, different computers connected to the Internet may provide processing resources to a grid network. By applying the use of thousands of individual computers, large problems can be solved quickly. Grids are used in many areas, such as cancer research, physics, and geosciences.
Security is a concern within grid networks. One particular concern is the execution of malicious applications of nodes in a grid. Currently, digital certificates are employed to authorize a remote user and node to execute on a node in the grid. With this process, a user obtains a digital certificate. In requesting execution of an application on a node, the user signs on with a pass-phrase, attaching a digital certificate, which will be associated with all programs that the user attempts to execute. Next, an application is selected from a grid resource application manager for execution. Further, one or more remote nodes are selected to execute the application. Additionally, other remote resources also are selected. For example, these remote resources may be disk space or databases.
Thereafter, the application and the digital certificate are sent to the node or nodes for execution. Prior to execution of the application, the node checks this digital certificate with a certificate authority. A certificate authority is an entity that is authorized to issue certificates. If the certificate passes the check, the application is then executed.
One problem with this security mechanism is that this model does not account for a stolen user's pass-phrase. Once a pass-phrase is stolen, a hacker may execute a malicious program to implant a Trojan Horse on resources throughout the grid. Grids are particularly enticing to hackers because of the distributed nature of grids. With a Trojan Horse, a hacker may access any node, bypassing the grid security.
Therefore, it would be advantageous to have an improved method, apparatus, and computer instructions for authorizing execution of applications in a network data processing system.